/**
 * 自定义表单校验器
*/
import axios, { get } from "axios";

const RegExp = {
    mobile: /^1[3|4|5|7|8][0-9]{9}$/
};

const validatos = {
    
    /** 验证“注册”或“更换手机”手机号 */
    mobile: (rule, value, callback) => {
        if(!value || value.length == 0) {
            return callback(new Error("请输入手机号码!"));
        }
        if(!RegExp.mobile.test(value)) {
            return callback(new Error("请输入正确的手机号码!"))
        }
        get("/api/open/data/tk_car_13")
            .then(function(response) {
                if (value == 13111111111) {
                    callback(new Error("此手机号已被注册!"));
                }
                callback();
            }).catch(function(error) {
            callback(new Error("此手机号号码已被注册!"));
        })
    },
    /** 验证“登录”或“忘记密码”手机号 */
    inMobile: (rule, value, callback) => {
        if(!value || value.length == 0) {
            return callback(new Error("请输入手机号码!"));
        }
        if(!RegExp.mobile.test(value)) {
            return callback(new Error("请输入正确的手机号码!"))
        }
        get("/api/open/data/tk_car_13")
            .then(function(response) {
                if (value == 13111111111) {
                    callback(new Error("此手机号尚未注册!"));
                }
                callback();
            }).catch(function(error) {
            callback(new Error("此手机号尚未注册!"));
        })
    }
};

export default (field) => validatos[field] || ((rule, value, callback) => callback());